User blog:ArtismScrub/Generalizing the fast-growing hierarchy towards positive real heights
amazing how the hyper-operators haven't been generalized yet, but this is fine Rules (VERY BAD, CHECK UPDATE) For integer a,b, computation proceeds as normal. fa(b) = fa-1b(b) if a > 0 f0(b) = b+1 Now for the generalized version: fa(b) = fc(fa-1int(b)(b)) if a > 1, where c is (a-1)×frac(b) if c < 1, then fa(b) = fc(fa-1int(b)(b)) - log2(2-c), to prevent f0()s from building up, causing a difference for integer b fa(b) = b(a+1) + log2(2-a) if a* is between 0 and 1 Think this is unnecessarily complicated? I agree completely. The last part took me quite a while to devise. It was easy to find a sequence between b and 2b, but I somehow had to fit that +1 at the beginning so f0(b) wouldn't just equal b, but f1(b) would still be 2b, not 2b+1. So, for lack of a better sequence approaching 0, I used the binary logarithm. Arbitrary? Somewhat, but at least it's a viable sequence that didn't involve infinite sums or circular references. And even after that, I realized that if I didn't add the logarithm part to the first rule, then some normal function like f2(3) would evaluate to f0(f1(f1(f1(3)))), which would yield a different result than normal, which is not acceptable. But still, this allows us to define numbers like: biroot-balum = f√2(10) goldalum = fφ(10) (or bifrac-unadd-biroot-quintalum) Eulalum = fe(10) pialum = fπ(10) all of which I can't be bothered to calculate, because of awkward irrationals. Now, this still comes with a few issues. #The logarithm part is still kind of forced and arbitrary. #I'm almost certain that this does not satisfy the equality f2(n) = n×2n for non-integer n. #Or the equality fn(1) = 2. Is there any way this can be improved to be less forced and perhaps support the equalities mentioned? Update Never mind, I'm a complete idiot. There's a far easier way to make it approach zero without using logarithms: Here's the refined definition: fa(b) = fc(fa-1int(b)(b)) if a > 1, where c is (a-1)×frac(b) if c < 1, then fa(b) = fc(fa-1int(b)(b)) - (1 - c) fa(b) = b(a+1) + 1 - a if a is between 0 and 1 This is much less arbitrary, and it satisfies the equality fn(1) = 2 for all n. Proof of the equality fn(1) = 2 fn(1) = f(n-1)×frac(1)(fn-1int(1)(1)) - (1 - (n-1)×frac(1)) fn(1) = f(n-1)×0(fn-11(1)) - (1 - (n-1)×0) fn(1) = f0(fn-11(1)) - (1 - 0) since t×0=0 is true for all t. fn(1) = fn-11(1) + 1 - 1 fn(1) = fn-11(1) + 0 fn(1) = fn-11(1), since zero is the additive identity. This is third grade logic, folks! fn(1) = fn-1(1), since iterating a function once simply means using it once. Result: fn(1) = fn-1(1) for all n > 1. Good. Since this property can be applied continuously until n < 1, we can just say that fn(1) = ffrac(n)(1). Now, assuming 0 < n < 1: fn(1) = 1×(n+1) + 1 - n fn(1) = n+1 + 1 - n, since 1 is the multiplicative identity fn(1) = n + 2 - n (1+1=2) fn(1) = n - n + 2 (rearranging, since all of this is associative) fn(1) = 0 + 2 (n - n = 0 is true for all n, this is the additive inverse property) fn(1) = 2 (this is what we've been looking for!) But it doesn't completely work...? (f2(n) ≠ n×2n) f2(b) = f(2-1)×frac(b)(f2-1int(b)(b)) - (1 - frac(b)) (since frac(b) is by definition less than 1) f2(b) = f1×frac(b)(f1int(b)(b)) - (1 - frac(b)) (2 - 1 = 1) f2(b) = ffrac(b)(f1int(b)(b)) - (1 - frac(b)) (1 is the multiplicative identity) f1a(b) = b×2a so: f2(b) = ffrac(b)(b×2int(b)) - (1 - frac(b)) f2(b) = f frac(b)(b×2int(b)) - (1 - frac(b)) = b×2int(b)×(frac(b)+1) + 1 - frac(b) - (1 - frac(b)) f2(b) = ffrac(b)(b×2int(b)) - (1 - frac(b)) = b×2int(b)×(frac(b)+1) + 0 (1 - frac(b) - (1 - frac(b)) = 0, additive inverse) f2(b) = f frac(b)(b×2int(b)) - (1 - frac(b)) = b×2int(b)×(frac(b)+1) (0 is the additive identity) Now, we can tell this works for integer b because: b×2int(b)×(frac(b)+1) int(b) = b, frac(b) = 0 b×2b×(0+1) b×2b×1 (0 is the additive identity) b×2b (1 is the multiplicative identity) and, sure enough, f2(b) = b×2b. Now for non-integer b... b×2int(b)×(frac(b)+1) At this point, I've simplified this as much as I can. I can no longer work with variable b. Let's try an example... say b = 2.5. 2.5×22×(0.5+1) 2.5×4×1.5 10×1.5 15 But if we plug in the normal f2() formula... 2.5×22.5 2.5×5.6568542494923801952067548968388... 14.142135623730950488016887242097... So close, but so far! Category:Blog posts